scikit-rf has a few virtual instrument classes, located in the skrf.vi
module. This page demonstrates the basic control of a PNA
In [ ]:
from skrf.vi import vna
p =vna.PNA("TCPIP0::192.168.0.2::INSTR")
p.idn
In [ ]:
ntwks = p.get_network_all_meas()
In [ ]:
[k.plot_s_db(label = k.name) for k in ntwks]
In [ ]:
from IPython.html.widgets import interact, interactive, fixed
from IPython.html import widgets
from IPython.display import clear_output, display, HTML
In [ ]:
import matplotlib
matplotlib.use('nbagg')
freq= p.frequency
f_start = freq.start/1.e9
f_stop = freq.stop/1.e9
f_npts = 101
f_range =(f_start, f_stop,1)
f_range
def dummy(f_start=f_start,f_stop=f_stop):
p.frequency = rf.Frequency(f_start, f_stop,f_npts,'ghz')
p.get_twoport().plot_s_db()
interact(dummy,f_start=f_range,f_stop=f_range)